package com.wicket.okrapp.biz.service.dto.req;

import com.wicket.okrapp.common.dto.BaseDto;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import javax.validation.constraints.NotNull;
import java.io.Serializable;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;

/**
 * @desc AddEvaTempTargetCycleRelatedReqDto
 * @使用场景
 */
@Data
public class AddEvaTempTargetCycleRelatedReqDto
        extends BaseDto
        implements Serializable {

    @ApiModelProperty("目标周期列表")
    List<String> targetCycleList = new ArrayList<>();
    /**
     * 评价模板ID:
     */
    @NotNull(message = "评价模板ID不能为空")
    @ApiModelProperty("评价模板ID")
    private String evaluationTemplateId;
    /**
     * 评价模板简称:
     */
    @NotNull(message = "评价模板简称不能为空")
    @ApiModelProperty("评价模板简称")
    private String evaluationTempShortName;
    /**
     * 批次ID:
     */
    @NotNull(message = "批次ID不能为空")
    @ApiModelProperty("批次ID")
    private String batchCode;
    /**
     * 虚拟组织下部门ID:
     */
    @NotNull(message = "虚拟组织下部门ID不能为空")
    @ApiModelProperty("虚拟组织下部门ID")
    private String deptId;
    /**
     * 周期开始时间:
     */
    @NotNull(message = "周期开始时间不能为空")
    @ApiModelProperty("周期开始时间")
    private Date cycleStartTime;
    /**
     * 周期结束时间:
     */
    @NotNull(message = "周期结束时间不能为空")
    @ApiModelProperty("周期结束时间")
    private Date cycleEndTime;
    /**
     * 周期ID:
     */
    @NotNull(message = "周期ID不能为空")
    @ApiModelProperty("周期ID")
    private String cycleId;
    /**
     * 评价模板创建时间排序:
     */
    @NotNull(message = "评价模板创建时间排序不能为空")
    @ApiModelProperty("评价模板创建时间排序")
    private Date orderNumber;
    /**
     * 目标周期来自内容ID:
     */
    @NotNull(message = "目标周期来自内容ID不能为空")
    @ApiModelProperty("目标周期来自内容ID")
    private String targetCycleContentId;

}
